本发明公开了一种适用于无线传感器网络的事件检测机制,括以下步骤:a、事件源节点根据自己传感器类型做出相应的原子事件的判决结果;b、此判决结果传送至中间节点;c、中间节点在转发过程中则根据来自不同节点的原子事件判决结果做出复合事件发生与否的最终判决;d、复合事件最终判决传送至汇聚节点。本发明考虑多属性复合事件检测及判决机制,丰富事件检测的种类,提高了事件检测的准确性。同时,减少了网络中传输的初始判决信息,节省网络资源,提高了网络的性能。
1.一种适用于无线传感器网络的事件检测机制,其特征在于,包括以下步骤:a、事件源节点根据自己传感器类型做出相应的原子事件的判决结果;b、此判决结果传送至中间节点;c、中间节点在转发过程中则根据来自不同节点的原子事件判决结果做出复合事件发生与否的最终判决;d、复合事件最终判决传送至汇聚节点。
2.根据权利要求1所述的一种适用于无线传感器网络的事件检测机制,其特征在于,所述无线传感器网络的事件为单一事件或复合事件。
3.根据权利要求1所述的一种适用于无线传感器网络的事件检测机制,其特征在于,所述步骤d中,在复合事件最终判决传送至汇聚节点之前复合事件最终判决经历若干个事件转发节点。
4.根据权利要求书1所述的一种适用于无线传感器网络的事件检测机制,其特征在于,所述步骤a根据判决准则1做出原子事件判决,得到初始原子事件判决结果[b
i1,b
i2,...,b
i|M|]。
5.根据权利要求书4所述的一种适用于无线传感器网络的事件检测机制,其特征在于,所述节点根据不同原子事件判决结果将自己归为源节点b
im=1或转发节点b
im=0。如果为源节点则将初步判决结果[b
i1,b
i2,...,b
i|M|]以恒定速率ξ发送至汇聚节点,持续时间为t
ξ;如果为转发节点则保持沉默仅参与转发。
6.根据权利要求书5所述的一种适用于无线传感器网络的事件检测机制,其特征在于,进一步,节点n
i收到来自节点n
j的原子事件判决结果时,首先查看事件标志位B
ialert,如果B
ialert=1则表明事件已经发生,不再转发原子事件判决结果,节点n
i向S
ei中节点发送事件警报包Ψ,通告他们判决结束停止发包;如果B
ialert=0则表明并未判定事件发生,查看n
j是否在集合S
ei中,如果在,则表明曾经收到过来自n
j的同样判决信息,直接转发即可。如果不在集合S
ei中,则将节点n
j加入S
ei中,并更新自己判决缓存信息b
im’=b
im|b
jm,任意m∈M。
7.根据权利要求书1所述的一种适用于无线传感器网络的事件检测机制,其特征在于,所述步骤c具体为:节点n
i根据判决准则2做复合事件判决,如果Δ
i=1,则判定事件发生,并置事件发生标志位B
ialert=1。
8.根据权利要求书1所述的一种适用于无线传感器网络的事件检测机制,其特征在于,所述步骤d具体为:虚拟事件源节点节点n
i向汇聚节点发送事件警报包Ψ,通知决策者紧急事件发生。
9.根据权利要求书8所述的一种适用于无线传感器网络的事件检测机制,其特征在于,进一步,虚拟事件源节点节点n
i向S
ei中节点发送事件警报包Ψ,通告他们判决结束停止发包。
技术领域本发明涉及计算机网络技术领域,尤其涉及一种适用于无线传感器网络的事件检测机制设计方法。
背景技术无线传感器网络由大量低功耗、低速率、低成本、低复杂度的大规模微型节点组成,采用自我组织、自我愈合的方式组成网络。利用传感器网络可以实现数据的采集量化和融合,以及传输应用和远程控制访问。通过将传感节点人为或者随机部署在特定区域,采集周围环境信息,并进行传输和汇聚。这种大规模、低成本、无人值守、自动组网、鲁棒性和抗毁性强的网络方式,在众多监测领域如生态系统检测、火山活动、火灾、毒气泄漏等方面有其得天独厚的技术优势和广阔的应用前景。事件的准确感知是面向事件监测无线传感器网络有效性的前提。然而由于成本受限,传感器节点感知事件的可靠性受到制约,加上外界环境等多种因素的干扰。单个传感器节点无法准确判断事件发生。因此,如何利用节点协作,准确感知事件是一个迫切需要解决的关键问题。然而,现有的事件检测机制中均仅考虑单属性事件,无法适用于多属性事件也即复合事件检测。针对此问题,本发明提出了一种复合事件检测机制,可以应用在复合事件及多事件监测领域。面向事件监测的无线传感器网络可以看做是一个分布式的检测系统。各传感器节点按需或随机分布在监测区域协同工作完成监测任务。当某事件发生时,各节点协作做出更为准确可靠的判决结果。传统的分布式事件检测的特点就是各节点在本地独立的根据自己监测结果做出判决,实际上也是一种检测融合机制。接着节点将自身的判决结果发往判决中心,由判决中心做最终裁决。与将原始检测信息直接发往判决中心的方法相比,分布式的判决方法能够避免大量原始信息的传输,降低了网络负载。值得注意的是,在分布式事件检测系统中,所有节点必须将初始判决结果发往汇聚节点做最终判决。尽管各节点的初始判决是分布式的,但最终判决地点仍固定为汇聚节点,实际上仍是一种集中式的最终判决。
发明内容本发明解决的技术问题在于减少网络中传输的初始判决信息,节省网络资源,提高网络的性能。为了解决以上问题,一种适用于无线传感器网络的事件检测机制,包括以下步骤:a、事件源节点根据自己传感器类型做出相应的原子事件的判决结果;b、此判决结果传送至中间节点;c、中间节点在转发过程中则根据来自不同节点的原子事件判决结果做出复合事件发生与否的最终判决;d、复合事件最终判决传送至汇聚节点。进一步,作为一种优选,所述无线传感器网络的事件为单一事件或复合事件。进一步,作为一种优选,所述步骤d中,在复合事件最终判决传送至汇聚节点之前复合事件最终判决经历若干个事件转发节点。进一步,作为一种优选,所述步骤a根据判决准则1做出原子事件判决,得到初始原子事件判决结果[b
i1,b
i2,...,b
i|M|]。进一步,作为一种优选,所述节点根据不同原子事件判决结果将自己归为源节点b
im=1或转发节点b
im=0。如果为源节点则将初步判决结果[b
i1,b
i2,...,b
i|M|]以恒定速率ξ发送至汇聚节点,持续时间为t
ξ;如果为转发节点则保持沉默仅参与转发。进一步,作为一种优选,节点n
i收到来自节点n
j的原子事件判决结果时,首先查看事件标志位B
ialert,如果B
ialert=1则表明事件已经发生,不再转发原子事件判决结果,节点n
i向S
ei中节点发送事件警报包Ψ,通告他们判决结束停止发包;如果B
ialert=0则表明并未判定事件发生,查看n
j是否在集合S
ei中,如果在,则表明曾经收到过来自n
j的同样判决信息,直接转发即可。如果不在集合S
ei中,则将节点n
j加入S
ei中,并更新自己判决缓存信息b
im’=b
im|b
jm,任意m∈M。进一步,作为一种优选,所述步骤c具体为:节点n
i根据判决准则2做复合事件判决,如果Δ
i=1,则判定事件发生,并置事件发生标志位B
ialert=1。进一步,作为一种优选,所述步骤d具体为:虚拟事件源节点节点n
i向汇聚节点发送事件警报包Ψ,通知决策者紧急事件发生。进一步,作为一种优选,虚拟事件源节点节点n
i向S
ei中节点发送事件警报包Ψ,通告他们判决结束停止发包。本发明的优点在于,与传统的分布式事件检测系统最终判决中心在汇聚节点不同,本发明提出的自适应分布式判决结构,最终判决节点可以为任意中间转发节点。一旦判决事件发生则立即将最终判决结果发送给汇聚节点通告决策者,进一步减少了网络中传输的初始判决信息,节省网络资源,这对带宽、能量等资源严重受限的无线传感器网络来说有着重要意义。
附图说明当结合附图考虑时,通过参照下面的详细描述,能够更完整更好地理解本发明以及容易得知其中许多伴随的优点,但此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定,其中:图1本发明实施例应用场景示意图;图2传感器节点复合事件判决的流程图。
具体实施方式以下参照图1-2对本发明的实施例进行说明。为使上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。本发明适用于网络节点组成相同,通常指节点通信能力相同,即有相同的最大通信半径;节点已被全网络范围分配统一的IP地址或MAC地址等身份标识;面向事件监测的无线传感传感器网络。图1为本发明实施例应用场景示意图。该示意图表示在某一时刻,网络中所监测事件发生,事件源节点S1、S2、S3、S4、S5分别检测到该事件发生,组成事件源区域S。无线传感器网络监测区域通常较大,事件发生时通常只会触发部分节点,而不是所有节点。仅触发部分节点的事件叫做本地事件,针对本地事件仅事件覆盖区域触发的节点发送判决信息以减少能量开销。节点S1、S2、S3、S4、S5分别发送原子事件判决结果,并在S3节点处汇聚。节点S3满足复合事件判决条件进行复合事件判决,当判定事件发生后,经由节点F1、F2向汇聚节点Sink发送事件警报包,同时向事件源区域S内的节点S1、S2、S4、S5发送事件警报包,通知他们判决结束停止发包。在本发明中,事件源节点,指进行原子事件判决并判定事件发生,并发送判决结果的节点;事件转发节点,指进行原子事件判决但判定事件未发生,仅参与转发的节点;事件源区域,指由事件源节点组成的区域;汇聚节点,指对信息进行汇聚,并将结果最终通告给决策者的节点。在本具体实施例中,节点S1、S2、S3、S4、S5均为事件源节点;节点F1、F2为事件转发节点;图1中虚线圆域为事件源区域S;Sink节点为汇聚节点。图2为传感器节点复合事件判决的流程图。对所述的原子事件判决,首先我们要考虑的是节点n
i在本地根据其观测值做出事件的初步判决。如果节点n
i有T个测量值,U
Ti={u
1i,u
2i,...,u
Ti}。其中,u
ji是节点n
i的第j次测量结果:为0则判决为不发生,为1则判决为事件发生。利用序贯判决法,节点则不需要测量T次,当进行到第τ次测量时U
Tτ={u
1i,u
2i,...,u
τi}如果可以判决则立即判决。本发明采用累积对数似然比方法,各节点根据不同测量值,在本地做出序贯判决。在序贯判决法中,我们定义节点n
i进行第k次测量时的累加似然概率为Ω
ki:Ω
ki=∑
kj=1logλ
ji。其中,似然概率λ
ji定义如下:
λ i j = P ( u i j | H 1 ) P ( u i j | H 0 ) = p d i p f , u i j = 1 1 - p d i 1 - p f , u i j = 0 , i = 1,2 , . . . , N . ]]> 其中,p
f为虚警概率(即没有事件而判定有事件),p
d为检测概率(即有事件而判定有事件),具体取值由实际应用情况来确定。序贯判决法包括停止准则和判决准则。停止准则即得到最小的τ值,然后根据判决准则进行判决。本发明采用的序贯判决法的停止准则为:
γ i = 0 , if η 0 < Ω i k < η 1 1 , ifotherwise ]]> 其中,η
0=log[(1-p
d)/(1-p
f)],,η
1=log(p
d/p
f),分别为判决的上下限。当γ
i=0时表明测量到的数据不足以做出判决,仍需继续测量;γ
i=1时,则可根据下面准则做出判决:判决准则1:当累加似然概率Ω
ki小于或等于η
0时,判定b
i=0,即原子事件未发生;当累加似然概率Ω
ki大于或等于η
1时,判定b
i=1,即原子事件判定为真,判定事件发生。公式如下:
b i = 0 , if Ω i τ ≤ η 0 1 , if Ω i τ ≥ η 1 ]]> 任何节点在收到初步判决结果后则将此结果记录在缓存中,当接收到另外一个节点的判决结果时,按照如下准则进行复合事件判决:判决准则2:只有当组成复合事件的所有原子事件均判定为“真”时,判定事件发生。
Δ i = 1 if b i 1 AND b i 2 AND . . . AND b i | M | = 1 ; 0 otherwise . ]]> 其中,M为组成复合事件的属性集合,b
im为节点n
i的第m个原子事件的判决结果。对于复合事件判决,我们采用了简单的“与”判决准则,即所有原子事件判定为“真”时才判定复合事件的发生。采用这种方式,当网络中发生不同事件时,我们仍可以将不同事件区分而分别进行判断。对中间节点,其每收到一个不同节点发过来的判决结果时,便对其结果进行“或”运算,也即当有一个原子事件判定为真时,我们就设定该原子事件发生以提高其检测概率。一旦节点利用复合事件判决准则判定事件发生时,则立即向汇聚节点发送一个警报包,与此同时,警报包也朝相反方向发送,通告事件源区域节点判决结束,提前停止数据包发送以节省能量。节点n
i的详细判决步骤如下,其中S
ei为节点n
i收到不同数据包的事件源节点集合,初始状态S
ei为空;B
ialert为节点事件标志位,B
ialert=1代表事件发生,否则没有发生,初始状态B
ialert=0。步骤S101:首先节点根据判决准则1做出原子事件判决,得到初始原子事件判决结果[b
i1,b
i2,...,b
i|M|]。步骤S102:节点根据不同原子事件判决结果将自己归为紧急源节点(b
im=1)或紧急转发节点(b
im=0)。如果为源节点则将初步判决结果[b
i1,b
i2,...,b
i|M|]以恒定速率ξ发送至汇聚节点,持续时间为t
ξ;如果为转发节点则保持沉默仅参与转发。步骤S103:节点n
i收到来自节点n
j的原子事件判决结果时,首先查看事件标志位B
ialert。如果B
ialert=1则表明事件已经发生,不再转发原子事件判决结果,并转至步骤S106。如果B
ialert=0则表明并未判定事件发生,查看n
j是否在集合S
ei中,如果在,则表明曾经收到过来自n
j的同样判决信息,直接转发即可。如果不在集合S
ei中,则将节点n
j加入S
ei中,并更新自己判决缓存信息b
im’=b
im|b
jm,任意m∈M。步骤S104:节点n
i根据判决准则2做复合事件判决。如果Δ
i=1,则判定事件发生,并置事件发生标志位B
ialert=1。步骤S105:节点n
i向汇聚节点发送事件警报包Ψ,通知决策者紧急事件发生,节点n
i也称为虚拟事件源节点。步骤S106:节点n
i向S
ei中节点发送事件警报包Ψ,通告他们判决结束停止发包。在步骤S105中,我们将做出最终判决并发出事件警报包Ψ的节点称为虚拟事件源节点。此时无线传感器网络进入事件可靠通告的阶段。此外,一旦复合事件决策发生,我们应该及时通告源节点S
ei停止发送数据包以节省能量(步骤S106)。其中S
ei为节点n
i收到不同数据包的事件源节点集合,初始状态S
ei为空;B
ialert为节点事件标志位,B
ialert=1代表事件发生,否则没有发生,初始状态B
ialert=0。首先节点根据判决准则1做出原子事件判决,得到初始原子事件判决结果[b
i1,b
i2,...,b
i|M|]。节点根据不同原子事件判决结果将自己归为紧急源节点(b
im=1)或紧急转发节点(b
im=0)。如果为源节点则将初步判决结果[b
i1,b
i2,...,b
i|M|]以恒定速率ξ发送至汇聚节点,持续时间为t
ξ;如果为转发节点则保持沉默仅参与转发。节点n
i收到来自节点n
j的原子事件判决结果时,首先查看事件标志位B
ialert。如果B
ialert=1则表明事件已经发生,不再转发原子事件判决结果。如果B
ialert=0则表明并未判定事件发生,查看n
j是否在集合S
ei中,如果在,则表明曾经收到过来自n
j的同样判决信息,直接转发即可。如果不在集合S
ei中,则将节点n
j加入S
ei中,并更新自己判决缓存信息b
im’=b
im|b
jm,任意m∈M。节点n
i根据判决准则2做复合事件判决。如果Δ
i=1,则判定事件发生,并置事件发生标志位B
ialert=1。节点n
i向汇聚节点发送事件警报包Ψ,通知决策者紧急事件发生,节点n
i也称为虚拟事件源节点。节点n
i向S
ei中节点发送事件警报包Ψ,通告他们判决结束停止发包。如上所述,对本发明的实施例进行了详细地说明,但是只要实质上没有脱离本发明的发明点及效果可以有很多的变形,这对本领域的技术人员来说是显而易见的。因此,这样的变形例也全部包含在本发明的保护范围之内。